layui.config({
    base: "../authority/"//引入treeselect.js脚本
}).extend({
    treeSelect: "/treeSelect"
}).use(['treeSelect', 'form', 'jquery', 'util', 'layer', 'tableSelect'], function () {
    var form = layui.form
        , layer = layui.layer
        , treeSelect = layui.treeSelect
        , $ = layui.$;
    var tableSelect = layui.tableSelect;

    $.ajaxSetup({
        async: false
    })

    let id = getQueryString("id");

    $('#close').on("click", function () {
        layerClose();
    })
    if (id != null) {
        tableSelect.render({
            elem: '#staffName',	//定义输入框input对象 必填
            checkedKey: 'staffId', //表格的唯一建值，非常重要，影响到选中状态 必填
            searchKey: 'keyWord',	//搜索输入框的name值 默认keyword
            searchPlaceholder: '关键词搜索',	//搜索输入框的提示文字 默认关键词搜索
            table: {	//定义表格参数，与LAYUI的TABLE模块一致，只是无需再定义表格elem
                url: '/logisticsCourier/queryStaff?id=' + id,
                cols: [[
                    {type: 'radio', fixed: 'left'}
                    , {field: 'staffId', title: '员工ID', width: 150, sort: true, fixed: 'left'}
                    , {field: 'staffName', title: '员工名', width: 150, sort: true}
                    , {field: 'staffTel', title: '联系电话', width: 150, sort: true}
                    , {field: 'staffSex', title: '性别', width: 150, sort: true}
                ]]
            },
            done: function (elem, data) {
                //选择完后的回调，包含2个返回值 elem:返回之前input对象；data:表格返回的选中的数据 []
                //拿到data[]后 就按照业务需求做想做的事情啦~比如加个隐藏域放ID...
                var NEWJSON = []
                var NEWJSON1 = []
                for (let i = 0; i < data.data.length; i++) {
                    NEWJSON.push(data.data[i].staffName);
                    NEWJSON1.push(data.data[i].staffId);
                }
                $("#staffName").val(NEWJSON.join(","));
                $("#staffId").val(NEWJSON1.join(","));
            }
        })
    }else {
        tableSelect.render({
            elem: '#staffName',	//定义输入框input对象 必填
            checkedKey: 'staffId', //表格的唯一建值，非常重要，影响到选中状态 必填
            searchKey: 'keyWord',	//搜索输入框的name值 默认keyword
            searchPlaceholder: '关键词搜索',	//搜索输入框的提示文字 默认关键词搜索
            table: {	//定义表格参数，与LAYUI的TABLE模块一致，只是无需再定义表格elem
                url: '/logisticsCourier/queryStaff2',
                cols: [[
                    {type: 'radio', fixed: 'left'}
                    , {field: 'staffId', title: '员工ID', width: 150, sort: true, fixed: 'left'}
                    , {field: 'staffName', title: '员工名', width: 150, sort: true}
                    , {field: 'staffTel', title: '联系电话', width: 150, sort: true}
                    , {field: 'staffSex', title: '性别', width: 150, sort: true}
                ]]
            },
            done: function (elem, data) {
                //选择完后的回调，包含2个返回值 elem:返回之前input对象；data:表格返回的选中的数据 []
                //拿到data[]后 就按照业务需求做想做的事情啦~比如加个隐藏域放ID...
                var NEWJSON = []
                var NEWJSON1 = []
                for (let i = 0; i < data.data.length; i++) {
                    NEWJSON.push(data.data[i].staffName);
                    NEWJSON1.push(data.data[i].staffId);
                }
                $("#staffName").val(NEWJSON.join(","));
                $("#staffId").val(NEWJSON1.join(","));
            }
        })
    }

    //监听提交
    form.on('submit(tijiao)', function (data) {
        data.field.courierArea = a;
        $.ajax({
            url: '/logisticsCourier/addOrUpdate',
            dataType: 'json',
            type: 'POST',
            data: data.field,
            success: function (resp) {
                if (resp.state === 1) {
                    layerClose();
                    layer.msg(resp.msg);
                    parent.table.reload('courier');
                    parent.layer.msg("成功");
                } else {
                    layer.msg("失败");
                }
            },
            error: function (response) {
                console.log(response);
            }
        });
        return false;
    });

    if (id != null) {
        $.ajax({
            url: '/logisticsCourier/showUpdate',
            dataType: 'json',
            data: {id: id},
            type: 'POST',
            success: function (resp) {
                address = resp.data.courierArea;
                if (resp.code === 0) {
                    resp.data.tree = " ";
                    form.val('courier1', resp.data);
                    $("#staffName").attr("ts-selected", resp.data.staffId);
                    $("#staffName").val(resp.staffName);
                    form.render();
                }
            },
            error: function (response) {
                console.log(response);
            }
        })
    }

    var a;
    var address;
    treeSelect.render({
        elem: '#tree',
        // 数据
        data: "/logisticsArea/selectYi",//json数据
        // 异步加载方式：get/post，默认get
        type: 'get',
        // 占位符
        placeholder: '请填写快递员所在地区',
        // 是否开启搜索功能：true/false，默认false
        search: true,
        // 点击回调
        click: function (d) {
            a = d.current.id;
        },
        // 加载完成后的回调函数
        success: function (d) {
            //选中节点，根据id筛选
            treeSelect.checkNode('tree1', address);

            //  刷新树结构
            treeSelect.refresh();
        }
    })


})

/**
 得到地址栏的参数
 */
function getQueryString(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
    var r = window.location.search.substr(1).match(reg);
    if (r != null) return unescape(r[2]);
    return null;
}

